package me.helllp.dake.iam.core.logic.auth;

/**
 * 缓存处理接口
 */
public interface ICacheLogic {
    /**
     * 校验验证码
     *
     * @param account 用户账号
     * @param tenantId 租户ID
     * @param verifyCode 验证码值
     *
     * @return 是否校验成功
     */
    Boolean checkVerifyCode(String account, Long tenantId, String verifyCode);

    /**
     * 查询是否需要进行验证码验证
     *
     * @param account 用户账号
     * @param tenantId 租户ID
     *
     * @return 是否需要验证码
     */
    Boolean isMustVerify(String account, Long tenantId);

    /**
     * 设置验证码
     *
     * @param account 用户账号
     * @param tenantId 租户ID
     * @param verifyCode 验证码值
     *
     * @return 是否设置成功
     */
    Boolean putVerify(String account, Long tenantId, String verifyCode);
}
